home *** CD-ROM | disk | FTP | other *** search
- /* Functions for getting and setting low-memory globals. These functions
- ensure compatability between the MPW and THINK C compilers, as well
- as removing direct references to global variables from the code
- (eliminating low-memory globals is recommended by Apple).
-
- 93/12/20 aih - removed unneeded globals
- 93/12/16 aih - added GetSysFontSize
- 93/12/07 aih - added SetAtMenuBottom
- 93/12/02 aih - added SetTopMenuItem
- 93/11/15 aih - added functions to get and set SEvtEnb
- 93/10/15 aih - added GetCurDirStore
- 93/03/12 aih - added segment loader globals
- 93/03/16 aih - added functions to get CurActivate and CurDeactivate
- 91/11/15 aih - created library */
-
- #include <SysEqu.h>
- #include "LowMemLib.h"
-
- /* low-memory globals not defined in SysEqu.h */
- enum {
- ANumber = 0x0A98,
- DABeeper = 0x0A9C,
- HWCfgFlags = 0x0B22,
- FSFCBLen = 0x03F6,
- TopMenuItem = 0xA0A,
- AtMenuBottom = 0xA0C,
- MenuList = 0x0A1C
- };
-
- /*----------------------------------------------------------------------------*/
- /* dialog manager */
- /*----------------------------------------------------------------------------*/
-
- DABeeperProcPtr GetDABeeper(void)
- {
- return(*(DABeeperProcPtr *) DABeeper);
- }
-
- short GetANumber(void)
- {
- return(*(short *) ANumber);
- }
-
- /*----------------------------------------------------------------------------*/
- /* file manager */
- /*----------------------------------------------------------------------------*/
-
- short GetHWCfgFlags(void)
- {
- return(*(short *) HWCfgFlags);
- }
-
- short GetFSFCBLen(void)
- {
- return(*(short *) FSFCBLen);
- }
-
- /*----------------------------------------------------------------------------*/
- /* memory manager */
- /*----------------------------------------------------------------------------*/
-
- Ptr GetROMBase(void)
- {
- return(*(Ptr *) ROMBase);
- }
-
- Ptr GetHeapEnd(void)
- {
- return(*(Ptr *) HeapEnd);
- }
-
- Ptr GetCurStackBase(void)
- {
- return(*(Ptr *) CurStackBase);
- }
-
- /*----------------------------------------------------------------------------*/
- /* menu manager */
- /*----------------------------------------------------------------------------*/
-
- Handle GetMenuList(void)
- {
- return(*(Handle *) MenuList);
- }
-
- void SetTopMenuItem(short top)
- {
- *(short *) TopMenuItem = top;
- }
-
- void SetAtMenuBottom(short bottom)
- {
- *(short *) AtMenuBottom = bottom;
- }
-
- /*----------------------------------------------------------------------------*/
- /* resource manager */
- /*----------------------------------------------------------------------------*/
-
- Boolean GetResLoad(void)
- {
- return(*(Boolean *)ResLoad);
- }
-
- /*----------------------------------------------------------------------------*/
- /* scrap manager */
- /*----------------------------------------------------------------------------*/
-
- Size GetScrapCount(void)
- {
- return(*(short *) ScrapCount);
- }
-
- /*----------------------------------------------------------------------------*/
- /* standard file package */
- /*----------------------------------------------------------------------------*/
-
- long GetCurDirStore(void)
- {
- return(*(long *) CurDirStore);
- }
-
- void SetCurDirStore(long dir)
- {
- *(long *) CurDirStore = dir;
- }
-
- void SetSFSaveDisk(short vol)
- {
- *(short *) SFSaveDisk = vol;
- }
-
- short GetSFSaveDisk(void)
- {
- return(*(short *) SFSaveDisk);
- }
-
- /*----------------------------------------------------------------------------*/
- /* window manager */
- /*----------------------------------------------------------------------------*/
-
- WindowPtr GetWindowList(void)
- {
- return(*(WindowPtr *) WindowList);
- }
-
- void SetDeskHook(ProcPtr hook)
- {
- *(ProcPtr *) DeskHook = hook;
- }
-
- void SetDragHook(ProcPtr hook)
- {
- *(ProcPtr *) DragHook = hook;
- }
-
- WindowPtr GetCurActivate(void)
- {
- return(*(WindowPtr *) CurActivate);
- }
-
- WindowPtr GetCurDeactive(void)
- {
- return(*(WindowPtr *) CurDeactive);
- }
-
- void SetCurActivate(WindowPtr window)
- {
- *(WindowPtr *) CurActivate = window;
- }
-
- void SetCurDeactive(WindowPtr window)
- {
- *(WindowPtr *) CurDeactive = window;
- }
-
- /*----------------------------------------------------------------------------*/
- /* segment loader */
- /*----------------------------------------------------------------------------*/
-
- short GetCurJTOffset(void)
- {
- return(*(short *) CurJTOffset);
- }
-
- void SetSegHiEnable(Boolean enable)
- {
- *(Byte *) SegHiEnable = enable;
- }
-
- Boolean GetSegHiEnable(void)
- {
- return(*(Byte *) SegHiEnable);
- }
-
- /*----------------------------------------------------------------------------*/
- /* miscelaneous */
- /*----------------------------------------------------------------------------*/
-
- Ptr GetCurrentA5(void)
- {
- return(*(Ptr *) CurrentA5);
- }
-